package com.bdsy.business.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.bdsy.business.model.Order;

public interface OrderMapper {

	int insert(Order order);
	
	int updateOrderStatus(Order order);
	
	List<Map> selectOrderById(String userId);
	
	List<Map> selectOrderByIdStatus(@Param(value="userId")String userId,@Param(value="orderStatus")int orderStatus);
	
	//根据用户ID 状态 查询订单（只有订单信息）
	List<Map> orderListById(@Param(value="userId")String userId,@Param(value="orderStatus")int orderStatus,@Param(value="status")int status);
	
	//根据用户ID 状态 查询订单编号
	List<String> selectOrderId(@Param(value="userId")String userId,@Param(value="orderStatus")int orderStatus);
	
	//根据订单编号查询订单信息
	List<Map> selectOrderByOrderId(@Param(value="orderId")String orderId,@Param(value="status")int status);
	
	List<Map> orderListByIdStatus(@Param(value="userId")String userId,@Param(value="status")int status);
	
	//删除订单 
	int deleteOrderById(@Param(value = "pIds")List<String> pIds);
	
	//已完成订单 
	int acount(String userId);
	//未完成订单 
	int ncount(String userId);
	
	//已完成订单 商品统计
	List<Map> saleStatis(String userId);
	
	//根据用户查询未完成订单信息
	List<Map> selectNOrderById(String userId);
	
	// 商城管理  已完成订单 订单详情  参数  userId shopTypeId lx( 0 日期 1 金额 ) qx(0 正序 1 倒序) 
	List<Map> areadyOrderList(@Param(value="userId")String userId,@Param(value="shopTypeId")int shopTypeId,@Param(value="lx")int lx,@Param(value="qx")int qx);

	// 商城管理  未完成订单 订单详情  参数  userId shopTypeId lx( 0 日期 1 金额 ) qx(0 正序 1 倒序) 
	List<Map> nareadyOrderList(@Param(value="userId")String userId,@Param(value="shopTypeId")int shopTypeId,@Param(value="orderStatus")int orderStatus,@Param(value="status")int status,@Param(value="qx")int qx);
	
	
	//后台
	// 当前用户 出售 商品的状态（付款 发货 收货 完成）
	List<Map> orderListByUserIdStatus(@Param(value="userId")String userId,@Param(value="shopTypeId")int shopTypeId,@Param(value="orderStatus")int orderStatus,@Param(value="status")int status);
}
